var element;
var rightmenu_;

$(function() {
    var menuInfo11 = '<c:out value="${sessionScope.MENUINfO}" />';
    console.info("menuInfo11:"+menuInfo11);
    layui.config({
        base: 'js/plugins/layui/extends/',
     }).use(['element','tabrightmenu'], function(){
         element = layui.element; //导航的hover效果、二级菜单等功能，需要依赖element模块
         rightmenu_ = layui.tabrightmenu;
        //rightmenu_.init();
        // 默认方式渲染全部：关闭当前（closethis）、关闭所有（closeall）、关闭其它（closeothers）、关闭左侧所有（closeleft）、关闭右侧所有（closeright）、刷新当前页（refresh）
        rightmenu_.render({
            container: '#nav_xbs_tab',
            filter: 'xbs_tab',
            navArr: [
                {eventName: 'refresh', title: '刷新当前页'},
                {eventName: 'closethis', title: '关闭当前页'},
                {eventName: 'closeall', title: '关闭所有页'},
                {eventName: 'closeothers', title: '关闭其它页'}
            ],
        });
        element.init();
        });

  //初始化左侧菜单信息
    var menu_json = JSON.parse(menuInfo);
    var ulInfo = $('#nav');
   for(var i=0;i<menu_json.length;i++){
       var itemInfo = menu_json[i];
        renderMenu(itemInfo,itemInfo.menuType, ulInfo,ulInfo);
   }
    var tab = {
        tabAdd: function(title, url, id) {
            element.tabAdd('xbs_tab', {
                title: title,
                content: '<iframe tab-id="' + id + '" frameborder="0" src="' + url + '" scrolling="yes" class="x-iframe"></iframe>',
                id: id
            });

        },
        tabDelete: function(othis) {
            element.tabDelete('xbs_tab', '44');
            othis.addClass('layui-btn-disabled');
        },
        tabChange: function(id) {
            element.tabChange('xbs_tab', id);
        }
    };
    tableCheck = {
        init: function() {
            $(".layui-form-checkbox").click(function(event) {
                if ($(this).hasClass('layui-form-checked')) {
                    $(this).removeClass('layui-form-checked');
                    if ($(this).hasClass('header')) {
                        $(".layui-form-checkbox").removeClass('layui-form-checked');
                    }
                } else {
                    $(this).addClass('layui-form-checked');
                    if ($(this).hasClass('header')) {
                        $(".layui-form-checkbox").addClass('layui-form-checked');
                    }
                }
            });
        },
        getData: function() {
            var obj = $(".layui-form-checked").not('.header');
            var arr = [];
            obj.each(function(index, el) {
                arr.push(obj.eq(index).attr('data-id'));
            });
            return arr;
        }
    }
    tableCheck.init();
    $('.container .left_open i').click(function(event) {
        if ($('.left-nav').css('left') == '0px') {
            $('.left-nav').animate({
                    left: '-221px'
                },
                100);
            $('.page-content').animate({
                    left: '0px'
                },
                100);
            $('.page-content-bg').hide();
        } else {
            $('.left-nav').animate({
                    left: '0px'
                },
                100);
            $('.page-content').animate({
                    left: '221px'
                },
                100);
            if ($(window).width() < 768) {
                $('.page-content-bg').show();
            }
        }
    });
    $('.page-content-bg').click(function(event) {
        $('.left-nav').animate({
                left: '-221px'
            },
            100);
        $('.page-content').animate({
                left: '0px'
            },
            100);
        $(this).hide();
    });
    $('.layui-tab-close').click(function(event) {
        $('.layui-tab-title li').eq(0).find('i').remove();
    });
    $("tbody.x-cate tr[fid!='0']").hide();
    $('.x-show').click(function() {
        if ($(this).attr('status') == 'true') {
            $(this).html('&#xe625;');
            $(this).attr('status', 'false');
            cateId = $(this).parents('tr').attr('cate-id');
            $("tbody tr[fid=" + cateId + "]").show();
        } else {
            cateIds = [];
            $(this).html('&#xe623;');
            $(this).attr('status', 'true');
            cateId = $(this).parents('tr').attr('cate-id');
            getCateId(cateId);
            for (var i in cateIds) {
                $("tbody tr[cate-id=" + cateIds[i] + "]").hide().find('.x-show').html('&#xe623;').attr('status', 'true');
            }
        }
    })
    $(document).ready(function() {
        $('.left-nav #nav li .sub-menu li ').click(function() {
            $(this).addClass('menu-current').siblings().removeClass('menu-current');
        })
    });
    $('.left-nav #nav li').click(function(event) {
        if ($(this).children('.sub-menu').length) {
            if ($(this).hasClass('open')) {
                $(this).removeClass('open');
                $(this).find('.nav_right').html('&#xe6a7;');
                $(this).children('.sub-menu').stop().slideUp();
                $(this).siblings().children('.sub-menu').slideUp();
            } else {
                $(this).addClass('open');
                $(this).children('a').find('.nav_right').html('&#xe6a6;');
                $(this).children('.sub-menu').stop().slideDown();
                $(this).siblings().children('.sub-menu').stop().slideUp();
                $(this).siblings().find('.nav_right').html('&#xe6a7;');
                $(this).siblings().removeClass('open');
            }
        } else {
            var url = $(this).children('a').attr('_href');
            var title = $(this).find('cite').html();
            var index = $('.left-nav #nav li').index($(this));
            for (var i = 0; i < $('.x-iframe').length; i++) {
                if ($('.x-iframe').eq(i).attr('tab-id') == index + 1) {
                    tab.tabChange(index + 1);
                    event.stopPropagation();
                    return;
                }
            };
            tab.tabAdd(title, url, index + 1);
            tab.tabChange(index + 1);
        }
        event.stopPropagation();
    });










});
var cateIds = [];
function getCateId(cateId) {
    $("tbody tr[fid=" + cateId + "]").each(function(index, el) {
        id = $(el).attr('cate-id');
        cateIds.push(id);
        getCateId(id);
    });
}
function x_admin_show(title, url, w, h) {
    if (title == null || title == '') {
        title = false;
    };
    if (url == null || url == '') {
        url = "404.html";
    };
    if (w == null || w == '') {
        w = ($(window).width() * 0.9);
    };
    if (h == null || h == '') {
        h = ($(window).height() - 50);
    };
    layer.open({
        type: 2,
        area: [w + 'px', h + 'px'],
        fix: false,
        maxmin: true,
        shadeClose: true,
        shade: 0.4,
        title: title,
        content: url
    });
}
function x_admin_close() {
    var index = parent.layer.getFrameIndex(window.name);
    parent.layer.close(index);
}


function renderMenu(menu,menuType, parent,treeParent) {
    var el = "";
    if(menuType=="M" && parent[0].tagName=="UL"){
        el=$('<li> <a href="javascript:;">\n' +
            '                      <i class="layui-icon '+menu.icon+'" style="font-size: 15px;"></i>\n' +
            '                      <cite>'+menu.menuName+'</cite>\n' +
            '                      <i class="iconfont nav_right">&#xe6a7;</i>\n' +
            '                  </a></li>');


    }
    /*else if(menuType=="C"){
        el=$('<li> <a href="javascript:;">\n' +
            '                      <i class="iconfont">&#xe6e4;</i>\n' +
            '                      <cite>'+menu.menuName+'</cite>\n' +
            '                      <i class="iconfont nav_right">&#xe6a7;</i>\n' +
            '                  </a></li>');
    }*/

     if(menu.children==undefined || menu.children==null){
         parent.append(el);
         return parent;
     }
     var ul = $('<ul class="sub-menu"></ul>');
    for(var i=0;i<menu.children.length;i++){
        var nodeItem =(menu.children)[i];
        if(nodeItem.menuType=="C"){
            var li = $('<li><a _href="'+nodeItem.url+'"><i class="iconfont">&#xe6a7;</i><cite>'+nodeItem.menuName+'</cite></a></li>');
            //renderMenu(nodeItem,nodeItem.menuType, li);
            ul.append(li);
        }else if(nodeItem.menuType=="M"){
            var li = $('<li> <a href="javascript:;">\n' +
                '                      <i class="iconfont">&#xe6e4;</i>\n' +
                '                      <cite>'+nodeItem.menuName+'</cite>\n' +
                '                      <i class="iconfont nav_right">&#xe6a7;</i>\n' +
                '                  </a></li>');
            renderMenu(nodeItem,nodeItem.menuType, li,treeParent);
            ul.append(li);
        }

    }
    if(el!=""){
        el.append(ul);
        parent.append(el);
    }else{
        parent.append(ul);
        treeParent.append(parent);
        parent = treeParent;
    }

    return parent;
}


